perm filename SHFT.FAI[NEW,LCS] blob
sn#559307 filedate 1981-01-27 generic text, type T, neo UTF8
00004 ; THIS PACKS NUMBERS IN BITS AS FOLLOWS:
00007 ; 4 / 5 / 3 / 24
00008 ; WDCNT/ P1 / P2 / P3
00009 ; THEN IT UNPACKS THEM.
00010 IA: BLOCK 200
00055 BEG:
00100 SH: MOVE 11,[7.0]
00200 MOVE 12,[1.0]
00300 MOVE 13,[4.0]
00400 MOVE 14,[75.6234]
00500
00600 A: MOVEI 1,12
00700 MOVEI 3,0 ;I ARRAY COUNTER
01100 MOVE 7,2(1) ;P3
01200 FMPR 7,[1000.00]
01300 KIFIX 7,7 ;MAKE P3 INTEGER*1000
01400 B: LSHC 7,-=24 ;SHIFT P3 INTO AC8
01500 KIFIX 7,1(1) ;GET STAFF
01600 LSHC 7,-3 ;SHIFT IT
01700 KIFIX 7,(1) ;GET CODE
01800 C: LSHC 7,-5 ;USES 5 BITS
01900 KIFIX 7,-1(1) ;WD CNT
02000 LSHC 7,-4 ; USES 4 BITS
02100 MOVEI 1,IA
02200 D: ADD 1,3
02300 MOVEM 8,(1)
02400 E: MOVE 1,IA ;GET LOC. OF ARRAY
02500 LSHC 1,-=24 ;GET P3
02550 LSH 2,-=12
02600 FLTR 2,2
02700 FDVR 2,[1000.00]
02800 MOVEM 2,7 ;PUT P3 INTO AC7
02900 LSHC 1,-3 ;GET P2
02925 LSH 2,-=33
02950 FLTR 2,2
03000 MOVEM 2,6
03100 LSHC 1,-5 ;CODE
03125 LSH 2,-=31
03150 FLTR 2,2
03200 MOVEM 2,5
03400 LSHC 1,-4 ;GET WD CNT
03412 LSH 2,-=32
03450 FLTR 2,2
03500 MOVEM 2,4
03550 EN: 0
03600 END BEG